Spring Cloud—二、Spring Cloud简介

Author Avatar
zuoqy 11月 13, 2018
  • 在其它设备中阅读本文章

2.1、简介

官网: http://spring.io/projects/spring-cloud
Spring Cloud是一个基于Spring Boot实现的微服务架构开发工具。它为微服务架构中涉及的配置管理、服务治理、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操作提供了一种简单的开发方式。

2.2、Spring Cloud子项目

Component Camden.SR7 Dalston.SR3 Edgware.M1 Finchley.M2 Finchley.BUILD-SNAPSHOT 备注
spring-cloud-aws 1.1.4.RELEASE 1.2.1.RELEASE 1.2.1.RELEASE 2.0.0.M1 2.0.0.BUILD-SNAPSHOT 用于简化整合Amazon Web Service的组件
spring-cloud-bus 1.2.2.RELEASE 1.3.1.RELEASE 1.3.1.RELEASE 2.0.0.M1 2.0.0.BUILD-SNAPSHOT 事件、消息总线,用于传播集群中的状态变化或事件。
spring-cloud-commons 1.1.9.RELEASE 1.2.3.RELEASE 1.3.0.M1 2.0.0.M2 2.0.0.BUILD-SNAPSHOT 服务发现、负载均衡、熔断机制这种模式为Spring Cloud客户端提供了一个通用的抽象层
spring-cloud-cli 1.2.4.RELEASE 1.3.4.RELEASE 1.4.0.M1 2.0.0.M1 2.0.0.BUILD-SNAPSHOT 用于在Groovy平台创建Spring Cloud应用
spring-cloud-contract 1.0.5.RELEASE 1.1.3.RELEASE 1.2.0.M1 2.0.0.M2 2.0.0.BUILD-SNAPSHOT
spring-cloud-config 1.2.3.RELEASE 1.3.2.RELEASE 1.4.0.M1 2.0.0.M2 2.0.0.BUILD-SNAPSHOT 配置管理工具,支持使用git、svn等存储配置文件。并在支持客户端配置信息的刷新,加密解密配置内容等。
spring-cloud-netflix 1.2.7.RELEASE 1.3.4.RELEASE 1.4.0.M1 2.0.0.M2 2.0.0.BUILD-SNAPSHOT 核心组件,对多个Netflix OSS开源套件进行整合
spring-cloud-security 1.1.2.RELEASE 1.2.1.RELEASE 1.2.1.RELEASE 2.0.0.M1 2.0.0.BUILD-SNAPSHOT 安全工具包

spring-cloud-cloudfoundry | 1.0.1.RELEASE | 1.1.0.RELEASE | 1.1.0.RELEASE2.0.0.M1 | 2.0.0.BUILD-SNAPSHOT | 整合Pivotal Cloudfoundry(Vmware推出的业界第一个开源Paas云平台)支持。|
| spring-cloud-consul | 1.1.4.RELEASE | 1.2.1.RELEASE | 1.2.1.RELEASE | 2.0.0.M1 | 2.0.0.BUILD-SNAPSHOT | 服务发现与配置管理工具 |
| spring-cloud-sleuth | 1.1.3.RELEASE | 1.2.4.RELEASE | 1.3.0.M1 | 2.0.0.M2 | 2.0.0.BUILD-SNAPSHOT | Spring Cloud应用的分布式跟踪实现 |
| spring-cloud-stream | Brooklyn.SR3 | Chelsea.SR2 | Ditmars.M2 | Elmhurst.M1 | Elmhhurst.BUILD-SNAPSHOT | 通过Redis、RabbitMQ、kafka实现的消息服务 |
| spring-cloud-zookeeper | 1.0.4.RELEASE | 1.1.2.RELEASE | 1.2.0.M1 | 2.0.0.M1 | 2.0.0.BUILD-SNAPSHOT | 基于Zookeeper的服务发现与配置管理组件 |
| spring-boot | 1.4.5.RELEASE | 1.5.4.RELEASE | 1.5.6.RELEASE | 2.0.0.M3 | 2.0.0.M3 |
| spring-cloud-task | 1.0.3.RELEASE | 1.1.2.RELEASE | 1.2.0.RELEASE | 2.0.0.M1 | 2.0.0.RELEASE | 用于快速构建数据处理的应用 |
| spring-cloud-vault | | 1.0.2.RELEASE | 1.1.0.M1 | 2.0.0.M2 | 2.0.0.BUILD-SNAPSHOT |
| spring-cloud-gateway ||| 1.0.0.M1 | 2.0.0.M2 | 2.0.0.BUILD-SNAPSHOT| Spring Cloud网关相关的整合实现 |

2.3、版本说明

大多数spring项目都是以“主版本号.次版本号.增量版本号.里程碑版本号”的形式命名版本号的,例如Spring Framework稳定版本4.3.5.RELEASE、里程碑版本5.0.0.M4等。其中,主版本号表示项目的重大重构;次版本号表示新特性的添加和变化;增量版本号一般表示bug修复;里程碑版本号表示某版本号的里程碑。

然而,Spring Cloud并未使用这种方式管理版本。下面来详细探讨一下Spring Cloud的版本。
官方版本:
官方版本.png

这些版本的名字采用了伦敦地铁站的名字,根据字母表的顺序来对应版本时间顺序,比如最早的Release版本为Angel,第二个Release版本为Brixton….

经过上面的解释,不难猜出,之前所提到的Angel.SR6、Brixton.SR5中的SR6、SR5就是版本号了。

当一个版本的Spring Cloud项目的发布内容积累到临界点或者一个严重bug解决可用后,就会发布一个”service releases”版本,简称SRX版本,其中X是一个递增的数字,所以Brixton.SR5就是Brixtom的第5个Release版本。

2.4 Spring Cloud框架特点

  • 特定优于配置。
  • 适用于各种环境。开发、部署在PC Server或各种云环境(例如阿里云、AWS等)均可。
  • 隐藏了组件的复杂性,并提供声明式、无XML的配置方式。
  • 开箱即用,快速启动。
  • 轻量级的组件。spring cloud整合的组件大多比较轻量。例如Eureka、Zuul,等等,都是各自领域轻量级的实现。
  • 组件丰富,功能齐全。Spring Cloud为微服务架构提供了非常完整的支持。例如,配置管理、服务发现、断路器、微服务网关等。
  • 选型中立、丰富。例如,Spring Cloud支持使用Eureka、Zookeeper或Consul实现服务发现。
  • 灵活。Spring Cloud的组成部分是解耦的,开发人员可按需灵活挑选技术选型。

出自:zuoqy博客
如若转载请注明出处!